package cn.xiaolang.issue.support;

import cn.xiaolang.issue.support.entity.StaticVariable;
import lombok.Data;
import org.junit.Assert;
import org.junit.Test;

/**
 * 静态变量:
 * <p>
 * 被static修饰的成员变量和成员方法是独立于该类的，它不依赖于某个特定的实例变量，
 * 也就是说它被该类的所有实例共享。所有实例的引用都指向同一个地方，任何一个实例对其的修改都会导致其他实例的变化
 *
 * @author Dean
 * @date 2021-02-01
 */
public class StaticVariableSample {

    @Test
    public void testShared() {
        new StaticVariable();
        Assert.assertEquals(1, StaticVariable.getMonitor());
        new StaticVariable();
        Assert.assertEquals(2, StaticVariable.getMonitor());
    }
}
